﻿//该js用于处理房源跟进权限相关逻辑
var PropertyRight = {};
var pr = PropertyRight;
//部门上编辑权限
pr.DModRight = "Property.Property.Modify-All";
pr.RModSelf = "Property.Property.Modify-MySelf";
pr.RModDepart = "Property.Property.Modify-MyDepartment";
pr.RModAll = "Property.Property.Modify-All";
//验证跟进删除权限
//propertys是房源集合,其中必须包含PropertyDepartmentKeyId,跟进房源做属部门
//DepartmentPermissions 操作人对跟进所属房源的部门权限
//keyid 跟进id
//estateName 房源楼盘
//userid 跟进填写人
//用于跟进左导页的跟进删除
PropertyRight.CheckModRight = function (propertys) {
    var roleRight = $("#hidPermissions").val();
    var myDepartments = $("#hidMyDepartments").val();
    var operator = $("#hidOperatorID").val();
    for (var i = 0; i < propertys.length; i++) {
        var item = $(propertys[i]);
        //判断操作人是否有删除所属房源的部门权限,比如A部门能不能删除房源B的跟进
        if (item.attr("right").indexOf(pr.DModRight) == -1) {
            $.OKDialogAgency('<div class="tc">您所在部门没有编辑该楼盘房源的权限！</div>');
            return false;
        }
        //如果有部门权限,那么判断角色权限
        //本人
        if (roleRight.indexOf(pr.RModSelf) > -1) {
            if (item.attr("userid") != operator) {
                $.OKDialogAgency('<div class="tc">您拥有的是编辑本人房源的权限,但您试图编辑不属于您的房源！</div>');
                return false;
            }
        }
        else if (roleRight.indexOf(pr.RModDepart) > -1) {
            if (myDepartments.indexOf(item.attr("departmentid")) == -1) {
                $.OKDialogAgency('<div class="tc">您拥有的是编辑本部房源的权限,但您试图编辑不属您管辖部门的房源！</div>');
                return false;
            }
        }
        else if (roleRight.indexOf(pr.RModAll) > -1) {
            return true;
        }
        else {
            $.OKDialogAgency('<div class="tc">您没有编辑房源的权限！</div>');
            return false;
        }
    }
    return true;
}
//删除判断用于房源详细页的跟进删除
PropertyRight.CheckDelRightDedail = function () {
    var roleRight = $("#hidPermissions").val();
    //判断操作人是否有删除所属房源跟进的部门权限,比如A部门能不能删除房源B的跟进
    if ($("#hidDepartmentPermissions").val().indexOf(pfr.DdelRight) == -1) {
        $.OKDialogAgency('<div class="tc">您所在部门没有删除当前楼盘的跟进的部门权限！</div>');
        return false;
    }
    //如果有部门权限,那么判断角色权限
    //本人
    if (roleRight.indexOf(pfr.RdelSelf) > -1) {
        if ($("#hidPropertyChiefKeyId").val() != $("#hidOperatorID").val()) {
            $.OKDialogAgency('<div class="tc">您拥有的是删除本人跟进的权限,但该楼盘的所属人不是您！</div>');
            return false;
        }
    }
    else if (roleRight.indexOf(pfr.RdelDepart) > -1) {
        if ($("#hidMyDepartments").val().indexOf($("#hidPropertyChiefDepartmentKeyId").val()) == -1) {
            $.OKDialogAgency('<div class="tc">您拥有的是删除本部跟进的权限,但您试图删除不属您管辖部门的跟进！</div>');
            return false;
        }
    }
    else {
        $.OKDialogAgency('<div class="tc">您没有删除跟进的权限！</div>');
        return false;
    }

    return true;
}
//删除判断用于房源详细页的跟进删除
PropertyRight.CheckTopRightDedail = function () {
    var roleRight = $("#hidPermissions").val();
    //判断操作人是否有删除所属房源跟进的部门权限,比如A部门能不能删除房源B的跟进
    if ($("#hidDepartmentPermissions").val().indexOf(pfr.DtopRight) == -1) {
        $.OKDialogAgency('<div class="tc">您所在部门没有置顶当前楼盘的跟进的部门权限！</div>');
        return false;
    }
    //如果有部门权限,那么判断角色权限
    //本人
    if (roleRight.indexOf(pfr.RtopSelf) > -1) {
        if ($("#hidPropertyChiefKeyId").val() != $("#hidOperatorID").val()) {
            $.OKDialogAgency('<div class="tc">您拥有的是置顶本人跟进的权限,但该楼盘的所属人不是您！</div>');
            return false;
        }
    }
    else if (roleRight.indexOf(pfr.RtopDepart) > -1) {
        if ($("#hidMyDepartments").val().indexOf($("#hidPropertyChiefDepartmentKeyId").val()) == -1) {
            $.OKDialogAgency('<div class="tc">您拥有的是置顶本部跟进的权限,但您试图置顶不属您管辖部门的跟进！</div>');
            return false;
        }
    }
    else {
        $.OKDialogAgency('<div class="tc">您没有删除跟进的权限！</div>');
        return false;
    }

    return true;
}
